The present invention relates to DRAM transactions. More specifically, the present invention relates to improvements in non-preemptive DRAM transactions in real-time unified memory architectures.
The problem of selecting which client gains access to DRAM is the same basic problem as solved in real time systems commonly used for scheduling tasks on a CPU, or scheduling access to a shared hardware resource. The theories in this area have been under development since the early 70's, and are reasonably advanced. While there are a number of approaches to scheduling, the simplest and possibly most robust is a static priority based schedule based on Rate Monotonic Scheduling.
Information about scheduling may be found in Janet Liu “Real-Time Systems”, Prentice-Hall (2000); Liu, C. L. and J. W. Layland, “Scheduling Algorithms for Multiprogramming in a Hard Real-Time Environment”, J. Assoc. Computing Machinery (ACM), vol. 20, pp. 46-61, 1973; Leung J. Y. T. and J. Whitehead, “On the Complexity of Fixed-Priority Scheduling of Periodic, Real-Time Tasks”, Performance Evaluation (Netherlands), vol. 2, pp. 237-250, 1982; Audsley, N. C., A. Burns, M. F. Richardson and A. J. Wellings, “Hard Real-Time Scheduling: the Deadline Monotonic Approach”, pp. 127-132 in Real-time Programming, ed. W. A. Halang and K. Ramamritham, Pergamon Press, 1992; and commonly assigned U.S. Pat. No. 6,189,064, the complete subject matter of each of which is incorporated herein by reference in its entirety.
In certain unified memory architecture systems, the memory controller is not interrupted while the memory is serving a client device, even if a request for service is received from a higher priority client during the servicing of the lower priority client. Such a system is referred to as a non-preemptive system. Non-preemption allows the page efficiency of the memory controller accessing DRAM to remain relatively high. Non-preemption has no effect on the determination of priorities of client devices in a rate-monotonic scheduling system. However, the critical instant analysis is affected in a number of areas, which must be handled correctly.
Further limitations and disadvantages of conventional and traditional approaches will become apparent to one of skill in the art, through comparison of such systems with the present invention as set forth in the remainder of the present application with reference to the drawings.